I. Field
The following description relates generally to wireless communications, and more particularly to dividing scheduling algorithms into background and foreground aspects capable of simultaneously servicing thousands or hundreds of thousands of flows in wireless wideband or broadband communications networks.
II. Background
Wireless communication systems are widely deployed to provide various types of communication; for instance, voice and/or data can be provided via such wireless communication systems. A typical wireless communication system, or network, can provide multiple users access to one or more shared resources (e.g., bandwidth, transmit power, . . . ). For instance, a system can use a variety of multiple access techniques such as Frequency Division Multiplexing (FDM), Time Division Multiplexing (TDM), Code Division Multiplexing (CDM), Orthogonal Frequency Division Multiplexing (OFDM), and others.
Generally, wireless multiple-access communication systems can simultaneously support communication for multiple access terminals. Each access terminal can communicate with one or more base stations via transmissions on forward and reverse links. The forward link (or downlink) refers to the communication link from base stations to access terminals, and the reverse link (or uplink) refers to the communication link from access terminals to base stations. This communication link can be established via a single-in-single-out, multiple-in-single-out or a multiple-in-multiple-out (MIMO) system.
MIMO systems commonly employ multiple (NT) transmit antennas and multiple (NR) receive antennas for data transmission. A MIMO channel formed by the NT transmit and NR receive antennas can be decomposed into NS independent channels, which can be referred to as spatial channels, where NS≦{NT, NR}. Each of the NS independent channels corresponds to a dimension. Moreover, MIMO systems can provide improved performance (e.g., increased spectral efficiency, higher throughput and/or greater reliability) if the additional dimensionalities created by the multiple transmit and receive antennas are utilized.
MIMO systems can support various duplexing techniques to divide forward and reverse link communications over a common physical medium. For instance, frequency division duplex (FDD) systems can utilize disparate frequency regions for forward and reverse link communications. Further, in time division duplex (TDD) systems, forward and reverse link communications can employ a common frequency region so that the reciprocity principle allows estimation of the forward link channel from reverse link channel.
Wireless communication systems oftentimes employ one or more base stations that provide a coverage area. A typical base station can transmit multiple data streams for broadcast, multicast and/or unicast services, wherein a data stream may be a stream of data that can be of independent reception interest to an access terminal. An access terminal within the coverage area of such base station can be employed to receive one, more than one, or all the data streams carried by the composite stream. Likewise, an access terminal can transmit data to the base station or another access terminal.
In wireless data systems, a scheduling policy should typically compute an allocation of power and bandwidth to different flows to ensure fairness between elastic flows, meet Quality of Service (QoS) constraints, and exploit multi-user diversity to name but a few. Traditionally, scheduling algorithms for wireless systems that have at least the above characteristics are geared towards giving a single flow the entire bandwidth at any given time. Such a policy typically is good for narrowband systems, where the amount of bandwidth available at each time is relatively small. However, for wideband systems, for scheduling policy to be optimal, the bandwidth at each time may need to be shared between multiple flows. In general, any policy which is suitable for scheduling a single user in a frame can be modified to the wideband case—simply by running the policy on small amounts of spectral resource (e.g., each tile in a frame in Ultra Mobile Broadband (UMB). Nevertheless, this can require a lot of computation in every frame.